library(readxl)
library(dplyr)
couche_ze_reg <- sf::read_sf('J:\\g_etstat\\Cartographie\\Fonds de cartes\\Usuels\\2020\\R32\\ZE parties régionales.shp') %>%
sf::st_transform('+proj=longlat +datum=WGS84')
cho <- read_excel("J:\\g_etstat\\Formations\\R cartographie dynamique\\Données\\Taux de chômage.xlsx")%>%
rename(ze2020=CodeZE)
carte_cho <- couche_ze_reg %>% left_join(cho,Taux, by=c("ze2020"="ze2020"))
class(carte_cho)
## [1] "sf" "tbl_df" "tbl" "data.frame"
library(mapview)
mapview(carte_cho, zcol = "Taux", legend = TRUE)
Afficher plusieurs couches on peut appeler la fonction mapview() plusieurs fois via +, ce qui nous donne un champs d’action plus large. Le paramètre layer.name permet de définir le nom des layers. cex permet d’ajuster la taille des points en fonction des valeurs d’une variable.
mapview(carte_cho, zcol = "Taux", layer.name = "Taux de chômage") +
mapview(carte_cho, zcol = "pop", layer.name = "Population")
library(tmap)
tmap_mode(mode = "view")
#La première colonne de la base de données correspond aux labels
carte_cho <-carte_cho%>%relocate(lb_clst)
tm_shape(carte_cho) +
tm_polygons(col = "Taux") +
tm_basemap()
Cette carte est interactive grâce au mode “view” dans tmap_mode().tmap_leaflet() permet de créer un widget {leaflet} à partir de votre carte {tmap} statique, c’est à dire de transformer votre objet tmap en objet leaflet.
Il est possible d’ajouter différentes couches à notre carte avec plusieurs appels à tm_shape() et des enchaînements avec +.
tm_basemap() permet d’intégrer un fond de cartetm_fill() est utilisée pour colorer les polygones en spécifiant la colonne de couleur, la palette de couleurs, l’opacité, …tm_borders() indique comment afficher les contours des formes : couleur, épaisseur, …tm_symbols() permet d’afficher des points en spécifiant, couleur, taille selon une variable, échelle, …library(ggplot2)
library(ggiraph)
gg <- ggplot(carte_cho) +
geom_sf_interactive(aes(fill = Taux,data_id = lb_clst,tooltip = paste0(Taux," % : ",lb_clst)))
girafe(ggobj = gg)
Si vous êtes un pro de la cartographie avec {ggplot2}, c’est LA fonction à utiliser pour rendre vos cartes interactives.
library(plotly)
library(ggplot2)
carte_gg <- ggplot(carte_cho) +
geom_sf(aes(fill = Taux), color = "white")
# ggplotly, et la magie opère :
ggplotly(carte_gg)
Il s’agit de la fonction la plus générale : elle permet de créer un objet plotly, qu’on veuille faire un simple graphe ou une carte. Il existe également une autre fonction spécifique pour les cartes plot_geo.
split est la variable affichée dans les labelscolor identifie la variable à représenterplot_ly(carte_cho, split = ~lb_clst, color = ~Taux) %>%
layout(showlegend = FALSE)